package com.yanqu.xiuxian.crosssystem.manger.elementalbonds.data;

import java.util.ArrayList;
import java.util.List;

public class ElementalBondsMatchData {

    // 玩家信息，必填
    private int channelId; //预留
    private long serverId;
    private long playerId;
    private long score;
    private int cardId;
    private List<Integer> skills = new ArrayList<>();
    private String key = "";
    private boolean ai = false;                         // 是否人机
    private String serverName = "";                     // 区服名称
    private boolean novice = false;                     // 是否新手阶段
    private boolean firstPlay = false;                             // 总对局次数
    private int rate;                                   // 胜率 万分比

    // 中途加的数据
    private long roomId = 0;                            // 房间号，0表示不在房间
    private long beginMatchTime = 0;                    // 开始匹配时间
    private boolean seeBegin = false;                   // 是否开过开场
    private long aiOperateTime = 0;                     // 距离expire多少秒内AI可以操作
    private long matchCostTime = 0;                     // 匹配耗时
    private long matchTimes = 0;                        // 尝试匹配的次数

    // 掉线相关
    private long disconnectTime = 0;                    // 掉线时间，0此时未掉线
    private int disconnectTimes = 0;                    // 掉线次数

    private int modeId;                                 // 匹配模式

    private boolean friendGuide;

    //皮肤相关的
    private int boardSkinId;                            //棋盘皮肤
    private int animationId;                            //动画皮肤
    private int effectId;                               //特效皮肤

    private int headId; //npc头像
    private int bodyId; //npc形象
    private String name;   //npc名字

    //是否取消了匹配
    private boolean canceled = false;


    public int getChannelId() {
        return channelId;
    }

    public void setChannelId(int channelId) {
        this.channelId = channelId;
    }

    public long getServerId() {
        return serverId;
    }

    public void setServerId(long serverId) {
        this.serverId = serverId;
    }

    public long getPlayerId() {
        return playerId;
    }

    public void setPlayerId(long playerId) {
        this.playerId = playerId;
    }

    public long getScore() {
        return score;
    }

    public void setScore(long score) {
        this.score = score;
    }

    public int getCardId() {
        return cardId;
    }

    public void setCardId(int cardId) {
        this.cardId = cardId;
    }

    public List<Integer> getSkills() {
        return skills;
    }

    public void setSkills(List<Integer> skills) {
        this.skills = skills;
    }

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }

    public boolean isAi() {
        return ai;
    }

    public void setAi(boolean ai) {
        this.ai = ai;
    }

    public String getServerName() {
        return serverName;
    }

    public void setServerName(String serverName) {
        this.serverName = serverName;
    }

    public boolean isNovice() {
        return novice;
    }

    public void setNovice(boolean novice) {
        this.novice = novice;
    }

    public boolean isFirstPlay() {
        return firstPlay;
    }

    public void setFirstPlay(boolean firstPlay) {
        this.firstPlay = firstPlay;
    }

    public long getRoomId() {
        return roomId;
    }

    public void setRoomId(long roomId) {
        this.roomId = roomId;
    }

    public long getBeginMatchTime() {
        return beginMatchTime;
    }

    public void setBeginMatchTime(long beginMatchTime) {
        this.beginMatchTime = beginMatchTime;
    }

    public boolean isSeeBegin() {
        return seeBegin;
    }

    public void setSeeBegin(boolean seeBegin) {
        this.seeBegin = seeBegin;
    }

    public long getAiOperateTime() {
        return aiOperateTime;
    }

    public void setAiOperateTime(long aiOperateTime) {
        this.aiOperateTime = aiOperateTime;
    }

    public long getMatchCostTime() {
        return matchCostTime;
    }

    public void setMatchCostTime(long matchCostTime) {
        this.matchCostTime = matchCostTime;
    }

    public long getDisconnectTime() {
        return disconnectTime;
    }

    public void setDisconnectTime(long disconnectTime) {
        this.disconnectTime = disconnectTime;
    }

    public int getDisconnectTimes() {
        return disconnectTimes;
    }

    public void setDisconnectTimes(int disconnTimes) {
        this.disconnectTimes = disconnTimes;
    }

    public int getModeId() {
        return modeId;
    }

    public void setModeId(int modeId) {
        this.modeId = modeId;
    }

    public boolean isFriendGuide() {
        return friendGuide;
    }

    public void setFriendGuide(boolean friendGuide) {
        this.friendGuide = friendGuide;
    }

    public int getBoardSkinId() {
        return boardSkinId;
    }

    public void setBoardSkinId(int boardSkinId) {
        this.boardSkinId = boardSkinId;
    }

    public int getAnimationId() {
        return animationId;
    }

    public void setAnimationId(int animationId) {
        this.animationId = animationId;
    }

    public int getEffectId() {
        return effectId;
    }

    public void setEffectId(int effectId) {
        this.effectId = effectId;
    }

    public int getHeadId() {
        return headId;
    }

    public void setHeadId(int headId) {
        this.headId = headId;
    }

    public int getBodyId() {
        return bodyId;
    }

    public void setBodyId(int bodyId) {
        this.bodyId = bodyId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public long getMatchTimes() {
        return matchTimes;
    }

    public void setMatchTimes(long matchTimes) {
        this.matchTimes = matchTimes;
    }

    public int getRate() {
        return rate;
    }

    public void setRate(int rate) {
        this.rate = rate;
    }

    public boolean isCanceled() {
        return canceled;
    }

    public void setCanceled(boolean canceled) {
        this.canceled = canceled;
    }
}
